package com.ant.storage.pojo;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author melon
 * @since 2023-12-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("car_info")
@ApiModel(value="CarInfo对象", description="")
public class CarInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "自编号")
    private String number;

    @ApiModelProperty(value = "车牌号")
    @TableField("license_number")
    private String licenseNumber;

    @ApiModelProperty(value = "城市ID")
    @TableField("city_id")
    private Integer cityId;

    @ApiModelProperty(value = "分部ID")
    @TableField("company_id")
    private Integer companyId;

    @ApiModelProperty(value = "车主")
    @TableField("car_owner")
    private String carOwner;

    @ApiModelProperty(value = "车辆类型ID")
    @TableField("vehicle_id")
    private Integer vehicleId;

    @ApiModelProperty(value = "车辆品牌")
    @TableField("car_brand")
    private String carBrand;

    @ApiModelProperty(value = "使用性质：0运营 1非运营")
    @TableField("car_nature")
    private Integer carNature;

    @ApiModelProperty(value = "使用燃料：0汽油 1柴油 2电动")
    @TableField("car_fuel")
    private Integer carFuel;

    @ApiModelProperty(value = "发动机号")
    @TableField("engine_number")
    private String engineNumber;

    @ApiModelProperty(value = "车架号")
    @TableField("vehicle_identification_number")
    private String vehicleIdentificationNumber;

    @ApiModelProperty(value = "购买时间")
    @TableField("purchasing_date")
    private LocalDate purchasingDate;

    @ApiModelProperty(value = "年审时间")
    @TableField("annual_verification_date")
    private String annualVerificationDate;

    @ApiModelProperty(value = "登记证书")
    @TableField("register_number")
    private String registerNumber;

    @ApiModelProperty(value = "核定载客(人)")
    @TableField("licensed_people")
    private String licensedPeople;

    @ApiModelProperty(value = "核定载货(吨)")
    @TableField("licensed_weight")
    private String licensedWeight;

    @ApiModelProperty(value = "入城证")
    @TableField("into_city_number")
    private String intoCityNumber;

    @ApiModelProperty(value = "入城证有限期")
    @TableField("into_city_number_date")
    private LocalDateTime intoCityNumberDate;

    @ApiModelProperty(value = "保险类型ID")
    @TableField("insurance_type_id")
    private Integer insuranceTypeId;

    @ApiModelProperty(value = "交强险公司")
    @TableField("insurance_company")
    private String insuranceCompany;

    @ApiModelProperty(value = "交强险到期时间")
    @TableField("insurance_date")
    private String insuranceDate;

    @ApiModelProperty(value = "商业险公司")
    @TableField("sencond_insurance_company")
    private String sencondInsuranceCompany;

    @ApiModelProperty(value = "商业险到期时间")
    @TableField("sencond_insurance_date")
    private String sencondInsuranceDate;

    @ApiModelProperty(value = "GPS编号")
    @TableField("gps_number")
    private String gpsNumber;

    @ApiModelProperty(value = "报废时间")
    @TableField("scrapping_date")
    private LocalDateTime scrappingDate;

    @ApiModelProperty(value = "是否安装尾板:0否 1是")
    @TableField("automobile_tailboard_flag")
    private Boolean automobileTailboardFlag;

    @ApiModelProperty(value = "尾板安装时间")
    @TableField("automobile_tailboard_date")
    private LocalDateTime automobileTailboardDate;

    @ApiModelProperty(value = "排放标准ID")
    @TableField("emission_standard_id")
    private Integer emissionStandardId;

    @ApiModelProperty(value = "车辆状态ID")
    @TableField("car_status_id")
    private Integer carStatusId;

    @ApiModelProperty(value = "备注")
    private String description;

    @TableField("creat_time")
    private LocalDateTime creatTime;

    @ApiModelProperty(value = "是否删除:0否 1是")
    @TableField("is_delete")
    private Boolean isDelete;

    @ApiModelProperty(value = "是否有登记证书:0否 1是")
    @TableField("register_number_flag")
    private Boolean registerNumberFlag;

    @ApiModelProperty(value = "运行状态ID:0 作业 1 空闲")
    @TableField("run_status")
    private Boolean runStatus;

    @ApiModelProperty(value = "最后派车车组人员")
    @TableField("last_persons")
    private String lastPersons;

    @ApiModelProperty(value = "行驶证到期时间")
    @TableField("driving_license")
    private LocalDate drivingLicense;

    @ApiModelProperty(value = "行驶证图片")
    @TableField("driving_license_url")
    private String drivingLicenseUrl;

    @ApiModelProperty(value = "入城证图片")
    @TableField("into_city_number_url")
    private String intoCityNumberUrl;

    @ApiModelProperty(value = "登记证书图片")
    @TableField("certificate_of_registration")
    private String certificateOfRegistration;

    @ApiModelProperty(value = "商业险金额")
    @TableField("sencond_insurance_money")
    private BigDecimal sencondInsuranceMoney;

    @ApiModelProperty(value = "商业险图片")
    @TableField("sencond_insurance_url")
    private String sencondInsuranceUrl;

    @ApiModelProperty(value = "交强险金额")
    @TableField("insurance_money")
    private BigDecimal insuranceMoney;

    @ApiModelProperty(value = "交强险图片")
    @TableField("insurance_url")
    private String insuranceUrl;

    @ApiModelProperty(value = "黄牌运营证")
    @TableField("operation_certificate")
    private String operationCertificate;

    @ApiModelProperty(value = "车身广告")
    @TableField("graphics_id")
    private Integer graphicsId;

    private Integer mileage;

    @ApiModelProperty(value = "租赁到期时间")
    @TableField("lease_expire")
    private LocalDate leaseExpire;

    @ApiModelProperty(value = "行驶证反面图片")
    @TableField("driving_license_back_url")
    private String drivingLicenseBackUrl;

    @ApiModelProperty(value = "尾板品牌")
    @TableField("tailboard_brand")
    private String tailboardBrand;

    @ApiModelProperty(value = "gps安装时间")
    @TableField("gps_install_time")
    private String gpsInstallTime;

    @ApiModelProperty(value = "今日是否限行")
    @TableField("traffic_restriction")
    private Boolean trafficRestriction;

    @TableField("commercial_insurance_url")
    private String commercialInsuranceUrl;

    @TableField("compulsory_insurance_url")
    private String compulsoryInsuranceUrl;

    @TableField("certificate_of_registration_all")
    private String certificateOfRegistrationAll;

    @ApiModelProperty(value = "是否锁定")
    @TableField("is_lock")
    private Boolean isLock;

    @ApiModelProperty(value = "曾用名")
    @TableField("over_name")
    private String overName;

    @ApiModelProperty(value = "用途")
    private Boolean purpose;

    @ApiModelProperty(value = "油卡号")
    @TableField("oil_card_number")
    private Long oilCardNumber;

    @TableField("purchase_time")
    private String purchaseTime;

    @TableField("purchase_money")
    private Double purchaseMoney;

    @TableField("depreciation_time")
    private Integer depreciationTime;

    @TableField("residue_depreciation_time")
    private Integer residueDepreciationTime;


}
